ABC227 A - Last Card
問題文
問題文$ 1,2,\ldots,N の番号のついた $ N 人の人に合計 $ K 枚のカードを配ります。
人 $ A から始めて 人 $ A,A+1,A+2,\ldots,N,1,2,\ldots の順に $ 1 枚ずつカードを配るとき、最後のカードは誰に配られるでしょうか?
厳密には、人 $ x(1 \leq x < N) の次には人 $ x+1 にカードを配り、人 $ N の次には人 $ 1 にカードを配ります。
制約
$ 1 \leq N,K \leq 1000
入力
入力入力は以下の形式で標準入力から与えられる。
$ N $ K $ A
出力
最後のカードが配られた人の番号を出力せよ。
入力例 1
code:memo
3 3 2
出力例 1
code:memo
1
人 $ 2 、人 $ 3 、人 $ 1 の順にカードを配ります。
入力例 2
code:memo
1 100 1
出力例 2
code:memo
1
入力例 3
code:memo
3 14 2
出力例 3
code:memo
3
code:memo.rs
use proconio::input;
fn solve1() {
input!{
n: i64,
k: i64,
a: i64,
}
let ans = if (a + k - 1) % n == 0 {
n
} else {
(a + k - 1) % n
};
println!("{}", ans);
}
fn main() {
solve1();
}
愚直なやり方じゃなく法則の方で解かないといけないパターン。